package com.wilhelmer.managedbeans.projektmanagement.einzelteile;

import java.io.IOException;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;

import com.wilhelmer.backedbeans.bauteilverwaltung.Einzelteil;

@ManagedBean (name="neuesEinzelteilBean")
@SessionScoped
public class NeuesEinzelteilBean {
	
	private DatabaseModelEinzelteil dbModelEinzelteil = null;
	private String bezeichnungEinzelteil = "";
	private int aid = 0;
	private int tpposID = 0;
	
	
	public void eintragenNeuesEinzelteil(ActionEvent event) {
		System.out.println("oida");
		dbModelEinzelteil = new  DatabaseModelEinzelteil();
		String message = "";
		FacesContext con = FacesContext.getCurrentInstance();
		ExternalContext exCon = con.getExternalContext();
		con.getExternalContext().getFlash().setKeepMessages(true);
		
		if(bezeichnungEinzelteil.equals("") || aid < 0 || tpposID < 0) {
			message = "Es wurden nicht alle Daten eingetragen!";
			con.addMessage("einzelteilEintragen", new FacesMessage(FacesMessage.SEVERITY_ERROR, message, ""));
		} else {
			
			Einzelteil et = new Einzelteil(bezeichnungEinzelteil);
			dbModelEinzelteil.insertNeuesEinzelteil(et, tpposID);
			
			message = "Einzelteil erfolgreich eingetragen!";
			con.addMessage("einzelteilEintragen", new FacesMessage(FacesMessage.SEVERITY_INFO, message, ""));
			exCon.invalidateSession();
		}
		
		try {
			exCon.redirect("../indexBauteilverwaltung.jsf");
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		
	}

	public String getBezeichnungEinzelteil() {
		return bezeichnungEinzelteil;
	}

	public void setBezeichnungEinzelteil(String bezeichnungEinzelteil) {
		this.bezeichnungEinzelteil = bezeichnungEinzelteil;
	}

	public int getAid() {
		return aid;
	}

	public void setAid(int aid) {
		this.aid = aid;
	}

	public int getTpposID() {
		return tpposID;
	}

	public void setTpposID(int tpposID) {
		this.tpposID = tpposID;
	}
}
